<?php
/**
 * @author André Coura <andreccls@gmail.com>
 * @since 26/11/2012
 */
//necessário para todas as páginas do admin (facilitador)
include("defaultSite.php");

require_once(PASTA_DAO."Premio.class.php");
require_once(PASTA_DAO."Credenciado.class.php");
require_once(PASTA_DAO."Endereco.class.php");
require_once(PASTA_DAO."ListaDesejo.class.php");

//verificação se o usuário esta logado, cado contrário, este será redirecionado para o login.
if($objUsrSession->getIdUsuario() == 0){
	HttpUtil::vaiPara("Login.php?msg=1");
}


/**
 * VERIFICAÇÃO DA TELA QUE SERÁ EXIBIDA
 */
if(!isset($_GET["id"]))
	$id = "";
else
	$id = (int)$_GET["id"];
if(!is_numeric($id) || $id == 0 || $id=="")
	$id = null;
$objCtrlSmarty->assign("id_premio",$id);
$objPremio = new Premio();
$objCredenciado = new Credenciado();
$objEndereco = new Endereco();
$objListaDesejo = new ListaDesejo();

if(!isset($_GET["a"]))
$_GET["a"] = "";
switch ($_GET["a"]){
	case 'adicionar':
		try{
			$arrListaDesejo = array();
			$arrListaDesejo["id_usuario"] = $objUsrSession->getIdUsuario();
			$arrListaDesejo["id_premio"] = $id;
			$objListaDesejo->alterar(null,$arrListaDesejo);		
			$objCtrlSmarty->assign("MENS_LISTA_DESEJO","O prêmio foi adicionado a sua lista de desejos.");	
			HttpUtil::vaiPara("ListaDesejos.php?msg=S");		
		}catch(CustonException $e){
			HttpUtil::vaiPara("DetalhePremio.php?id=".$id."&a=form&msg=erro3");		
		}
	break;
	case 'form':
	default:
		if(isset($id)){
			if($_GET["msg"] != null)
				$objCtrlSmarty->assign("MSG_PREMIO", $_GET["msg"]);
			
			//busco os dados do banco
			$arrCampos = $objPremio->buscaCampos($id);
			
			$arrCamposCredenciado = $objCredenciado->buscaCampos($arrCampos["id_credenciado"]);
			
			$arrCamposEndereco = $objEndereco->buscaCampos($arrCamposCredenciado["id_endereco"]);
			
			//seto no formulário os valores dos campos automaticamente
			foreach ($arrCampos as $nomeCampo => $fieldData) {
				if($nomeCampo == "img_premio"){
					$objCtrlSmarty->assign($nomeCampo,base64_encode(serialize(array("img"=>utf8_encode($fieldData), 
						"w"=>"93","h"=>"105", "filename" => PASTA_UPLOADS_ARQUIVOS."premio/"))));
				}else {
					$objCtrlSmarty->assign($nomeCampo,utf8_encode($fieldData));
				}
			}
			
			//seta no formulário os valores dos campos de credenciado automaticamente
			foreach ($arrCamposCredenciado as $nomeCampo => $fieldData) {
				switch ($nomeCampo){
					case "img_credenciado":
					case "img1_credenciado":
					case "img2_credenciado": 
					case "img3_credenciado":
						if(isset($fieldData) && $fieldData!=""){
							$objCtrlSmarty->assign($nomeCampo."_thumb",base64_encode(serialize(array("img"=>utf8_encode($fieldData), "w"=>"460","h"=>"400", "filename" => PASTA_UPLOADS_ARQUIVOS."credenciado/"))));
							$objCtrlSmarty->assign($nomeCampo,base64_encode(serialize(array("img"=>utf8_encode($fieldData), "w"=>"600","h"=>"400", "filename" => PASTA_UPLOADS_ARQUIVOS."credenciado/"))));
						}
					break;
					default:
						$objCtrlSmarty->assign($nomeCampo,utf8_encode($fieldData));
					break;
				}
			}
			
			//seta no formulário os valores dos campos de endereço automaticamente
			foreach ($arrCamposEndereco as $nomeCampo => $fieldData) {
				$objCtrlSmarty->assign($nomeCampo,utf8_encode($fieldData));
			}
		}
		$objCtrlSmarty->assign("telaCorrente", "resgatarPremio");
		
	break;
}

$objCtrlSmarty->assign("CONTEUDO",$objCtrlSmarty->fetch("detalhePremio.tpl"));

//definição da estrutura do admin <cabecalho, corpo e rodape>
$objCtrlSmarty->assign("ESTRUTURA",$objCtrlSmarty->fetch("estrutura.tpl"));

//ultima coisa que deve ter no arquivo, serve para imprimir a tela
$objCtrlSmarty->display("index.tpl");
?>